StupidBeauty
Read times:923Posted at:Sat Oct 12 17:08:46 2013
- no title specified

iOS开发文档翻译:核心数据编程指南/技术概述,Core Data Programming Guide/Technology Overview

技术概述

此文章说明的是,Core Data 提供的基本特性,以及妳为什么要使用这种技术。

Core Data特性

Core Data框架为关于对象生命周期和对象图管理的常见任务(包括数据持久化)提供了通用而自动化的解决方案。它的特性包括:

妳为什么应当使用Core Data?

有一堆理由可以说明为什么妳应当使用Core Data。其中一种简单的量化的理由就是:使用了Core Data之后,按照代码行数来算,妳所编写的用来支持妳的程序中模型层的代码一般会减少50%到70%。这主要是因为上面所说过的那些特性—Core Data所提供的就是那些妳无需亲自实现的特性。进一步说,这些特性妳都无需亲自测试,并且无需亲自优化。

Core Data拥有一个成熟的代码基础,它的质量是由单元测试来确保的,它每天被多种多样的程序中数计百万计的用户使用。在多次的新版本发布中,这个框架已被高度优化。它利用了那些一般不会在应用程序级别的代码中出现的模型和运行时特性。而且,除了提供优秀的案例性和错误处理能力之外,它还提供了同类别的竞争解决方案中拥有最佳内存灵活性的解决方案。换个角度说:妳可能花上一段长长的时间,创造出妳自己的针对特定问题领域的良好解决方案,但是跟为任何程序提供免费解决方案的Core Data 相比却占不到任何性能上的优势。

除了该框架本身提供的好处之外,Core Data还与OS X 工具链狠好地整合在一起。模型设计工具使得妳能够以图形化方式快速而轻易地创建妳的数据模式(schema)。妳可以使用仪表(Instruments)程序中的模板来衡量Core Data 的性能,并且调试各种各样的问题。在OS X 桌面平台,Core Data还能与界面构建器(Interface Builder)整合起来,使得妳可以从妳的模型中创建出用户界面。这方方面面的特性都能够帮助妳缩短妳的程序设计、实现和调试周期。

Core Data不是什么

现在已经知道了Core Data 是什么东西,干什么用的,为什么它是有用的。我们还要做点有用处的事,就是修正某些常见的错误认识和说法。

  • •.Core Data不是一个关系型数据库,也不是一个关系型数据库管理系统(RDBMS)。

    Core Data提供了一个基础设施,可用于跟踪变更,可用于将对象保存到存储设备中去或是从存储设备中读取回来。它可使用SQLite 作为其中一种持久化存储类型。但是,它本身并不属于一个数据库,也不是一个数据库。(举个例子强调这点:妳可以在妳的程序中只使用内存中的存储。妳可以用来跟踪变更以及管理变更,但是却不将任何数据保存到文件中去。)

  • •.Core Data不是万能药(silver bullet)。

    有了Core Data,妳同样需要写代码。尽管有可能仅仅使用Xcode 数据建模工具和界面构建器就创建出复杂的程序,但是,对于实际生活中使用的程序,妳仍然需要编写代码。

  • •.Core Data不依赖可可绑定。

    Core Data可与可可绑定狠好地整合在一起,并且这两者利用了相同的技术—当同时使用时它们能够显著减少妳所需要编写的代码量—但是完全可以只使用Core Data 而不使用(可可)绑定。妳可以创建一个不带用户界面的Core Data 程序(参考Core Data工具教程)。

霍思燕

Your opinions
Your name:Email:Website url:Opinion content:
- no title specified

HxLauncher: Launch Android applications by voice commands

 
Recent comments
2017年4月~2019年4月垃圾短信排行榜Posted at:Thu Sep 26 04:51:48 2024
Qt5.7文档翻译:QWebEngineCookieStore类,QWebEngineCookieStore ClassPosted at:Fri Aug 11 06:50:35 2023盲盒kill -9 18289 Grebe.20230517.211749.552.mp4